﻿using Standard;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using YSL.Application.Ysl_Dto.Input.WorkOrder;
using YSL.Application.Ysl_Dto.Output;

namespace YSL.Application.Services.WorkOrder
{
    public interface IWorkOrderService
    {
        /// <summary>
        /// 添加工单
        /// </summary>
        /// <param name="input">添加工单的输入参数</param>
        /// <returns>返回添加工单的结果</returns>
        ApiResult<int> AddWorkOrder(AddWorkOrderInput input);

        /// <summary>
        /// 删除工单
        /// </summary>
        /// <param name="input">删除工单的输入参数</param>
        /// <returns>返回删除工单的结果</returns>
        ApiResult<int> DeleteWorkOrder(DeleWorkOrderInput input);

        /// <summary>
        /// 更新工单
        /// </summary>
        /// <param name="input">更新工单的输入参数</param>
        /// <returns>返回更新工单的结果</returns>
        ApiResult<int> UpdateWorkOrder(UpWorkOrderInput input);

        /// <summary>
        /// 获取工单列表
        /// </summary>
        /// <returns>返回工单列表的查询结果</returns>
        ApiPaging<WorkOrderListOutput> GetWorkOrderList(GetWorkOrderListInput input);


        ApiResult<List<GetWorkOrderNumberListDto>> GetWorkOrderListNumber();


    }
}
